home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / std / c++ / 186 < prev    next >
Encoding:
Internet Message Format  |  1996-08-06  |  1.6 KB

  1. Path: engnews1.Eng.Sun.COM!taumet!clamage
  2. From: "john (j.d.) hickin" <hickin@bnr.ca>
  3. Newsgroups: comp.std.c++
  4. Subject: Re: auto_ptr again
  5. Date: 26 Jan 1996 22:56:56 GMT
  6. Organization: Bell-Northern Research
  7. Approved: clamage@eng.sun.com (comp.std.c++)
  8. Message-ID: <4ebhn5$lgt@bmtlh10.bnr.ca>
  9. NNTP-Posting-Host: taumet.eng.sun.com
  10. Mime-Version: 1.0
  11. Content-Type: text/plain; charset="us-ascii"
  12. Content-Transfer-Encoding: 7bit
  13. X-Nntp-Posting-Host: bmtlh520.bnr.ca 
  14. X-Mailer: Mozilla 1.1 (X11; I; HP-UX A.09.05 9000/715) 
  15. X-Url: news:3108FE66.FFD@suphys.physics.su.oz.au 
  16. X-Lines: 16
  17. Content-Length: 787
  18. Originator: clamage@taumet
  19.  
  20. |>         For the record, I have no objections to token passing per se --
  21. |> it's just another storage management idiom. What I object to is the use
  22. |> of copy syntax for a non-copying operation, and the fact that this
  23. |> idiom is far less useful than reference counting, and not constrained
  24. |> enough for a Holder style class.
  25.  
  26. And this, the expectation that constructors of the form X(X&) and X(const X&)
  27. must perform a *copy* operation, is, IMHO, the trouble.  The original term was
  28. reference constructor, a name which, in my opinion, carefully stepped around
  29. all subtleties of language. Copy is a loaded term because the C++ meaning
  30. and the English langauge definition are not the same.
  31.  
  32. -- 
  33. John Hickin      Bell-Northern Research, Montreal, Quebec
  34. (514) 765-7924   hickin@bnr.ca
  35.  
  36.  
  37. [ comp.std.c++ is moderated.  Submission address: std-c++@ncar.ucar.edu.
  38.   Contact address: std-c++-request@ncar.ucar.edu.  The moderation policy
  39.   is summarized in http://dogbert.lbl.gov/~matt/std-c++/policy.html. ]
  40.  
  41.